package com.tuozixuan.liteflow.component;

import java.util.Arrays;
import java.util.Iterator;

import com.yomahub.liteflow.annotation.LiteflowComponent;
import com.yomahub.liteflow.core.NodeIteratorComponent;

/**
 * 迭代循环组件，相当于Java语言的Iterator关键字，主要用于ITERATOR...DO...表达式。
 * 
 * <pre>
 * 需要继承NodeIteratorComponent，需要实现processIterator方法
 * 
 * 迭代对象的获取
 * 关键字ITERATOR...DO...中DO里面所有的节点都可以通过this.getCurrLoopObj()获得迭代循环的当前对象。
 * 在脚本中通过_meta.loopObject来获取。
 * </pre>
 * 
 */
@LiteflowComponent("iteratorComponentExample")
public class IteratorComponentExample extends NodeIteratorComponent {
	
	@Override
	public Iterator<?> processIterator() throws Exception {
		return Arrays.asList("one", "two", "three").iterator();
	}

}
